Computer networks facilitate communication between computers, and between computers and stand-alone peripherals. They make possible large scale computing systems, distributed service systems, and a whole host of applications that would otherwise be infeasible. Thus, incentives exist for the use and enhancement of computer network technology. As computer networks increase in speed and size, they require more sophisticated protocols to ensure fast and reliable communications. Network configuration and supervision are increasingly important parts of these protocols.
Storage area networks (SANs) are a popular type of computer network. SANs are networks of stand-alone data storage devices (e.g. disk drives). The SAN is usually a sub-network of a larger computer network that includes servers and personal computers. The advantages of SANs include having a large, shared storage capacity that has a high bandwidth access and does not have to be accessed through a server.
Many SANs rely on the Fibre Channel (FC) protocol. A single FC link can carry data at rates exceeding 2 gigabits per second (Gb/s) in both directions simultaneously. The FC protocol defines standard media and signaling conventions for transporting data in a serial fashion. It also provides an error correcting channel code and a frame structure for transporting the data. Further, the FC protocol sets out a buffer-credit-based flow control methodology, and creates some common services (e.g. fabric controller, name server). The FC protocol can be applied to various network topologies including point-to-point, ring, and switched fabric. Further details regarding the FC protocol can be found online at www.fibrechannel.org.
Switched fabric topologies are networks of switches that interconnect end-node devices. Well-designed switches provide at least some degree of automatic configurability. For example, they may automatically sense when a new link is connected to the switch, and may initiate an initialization process to discover what the link connects to. The switch may automatically determine various parameters for the link (e.g. link speed). Other parameters, however, have a more global effect and may not be automatically configurable by the switch. Examples may include zone names, domain names, port names, port identifier lengths, time-out values, security settings, inter-op modes, and long-distance modes. When the link connects switches in two otherwise separately operating fabrics, a mismatch in any of these parameters will prevent communication over the link. Network segmentation is the term for this phenomena: a physically connected network operating as multiple, separate networks.
Of course, network segmentation is undesirable when one wishes to merge the separate networks into a single unified network. It would be desirable to have a tool that determines whether a network merge will be successful and/or determines the causes of existing network segmentation.